package org.jsola.hr.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.jsola.core.dto.BaseDTO;
import org.jsola.hr.constant.convert.BooleanConverter;

import java.util.Map;
import java.util.Set;

/**
 * @author lyh
 */
@EqualsAndHashCode(callSuper = true)
@ApiModel(description = "导入减员映射实体")
@Data
public class ImportDecreaseDTO extends BaseDTO {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(notes = "姓名")
    @ExcelProperty(value = "姓名")
    private String name;

    @ApiModelProperty(notes = "证件号码")
    @ExcelProperty(value = "证件号码")
    private String idCard;

    @ApiModelProperty(notes = "是否社保减员")
    @ExcelProperty(value = "是否社保减员", converter = BooleanConverter.class)
    private Boolean whetherSocDecrease;

    @ApiModelProperty(notes = "社保减员年月")
    @ExcelProperty(value = "社保减员年月")
    private String stopSocDate;

    @ApiModelProperty(notes = "是否医保减员")
    @ExcelProperty(value = "是否医保减员", converter = BooleanConverter.class)
    private Boolean whetherMeDecrease;

    @ApiModelProperty(notes = "医保减员年月")
    @ExcelProperty(value = "医保减员年月")
    private String stopMeDate;

    @ApiModelProperty(notes = "是否公积金减员")
    @ExcelProperty(value = "是否公积金减员", converter = BooleanConverter.class)
    private Boolean whetherSealed;

    @ApiModelProperty(notes = "公积金减员年月")
    @ExcelProperty(value = "公积金减员年月")
    private String sealedDate;

    @ExcelProperty(value = "服务费")
    private String serviceCost;

    @ApiModelProperty(notes = "错误列")
    private Set<String> errorColumn;

    @ApiModelProperty(notes = "错误信息")
    private Map<String, String> errorInfo;

    @ApiModelProperty(notes = "员工Id")
    private String empId;


}
